The purpose of this document is to visualize the data available through networks.
Firstly, we import the requested libraries.
import pandas as pd
import numpy as np
import networkx as nx
import matplotlib.pyplot as plt
import sys
!{sys.executable} -m pip install networkx
%matplotlib inline
from IPython.display import HTML
import math
import json
import numpy as np
import pandas as pd
import networkx as nx
import cartopy.crs as ccrs
import matplotlib.pyplot as plt
%matplotlib inline
from pylab import *
Requirement already satisfied: networkx in c:\users\luisv\anaconda3\lib\site-packages (2.5) Requirement already satisfied: decorator>=4.3.0 in c:\users\luisv\anaconda3\lib\site-packages (from networkx) (4.4.2)
bicimad = pd.read_csv('../data/bicimad.csv', delimiter = ',')
streets = pd.read_csv('../data/streets.csv', delimiter = ',')
neighbourhoods = pd.read_csv('../data/neighbourhoods.csv', delimiter = ',')
districts = pd.read_csv('../data/districts.csv', delimiter = ',')
We remove the first column of each imported dataset, which contains no data.
bicimad.drop(['Unnamed: 0'], axis = 'columns', inplace = True)
streets.drop(['Unnamed: 0'], axis = 'columns', inplace = True)
neighbourhoods.drop(['Unnamed: 0'], axis = 'columns', inplace = True)
districts.drop(['Unnamed: 0'], axis = 'columns', inplace = True)
To begin, we visualize a simple network, selecting the arrival and departure points of the Bicimad dataset (which contains all the trips made).
edges = bicimad[['origin', 'destination']].values
edges
array([['DOCTOR ESQUERDO, CALLE, DEL', 'JUAN DE URBIETA, CALLE, DE'],
['DOCTOR ESQUERDO, CALLE, DEL', 'JUAN DE URBIETA, CALLE, DE'],
['DOCTOR ESQUERDO, CALLE, DEL', 'JUAN DE URBIETA, CALLE, DE'],
...,
['ALCALA, CALLE, DE', 'SERRANO, CALLE, DE'],
['ALCALA, CALLE, DE', 'SERRANO, CALLE, DE'],
['ALCALA, CALLE, DE', 'SERRANO, CALLE, DE']], dtype=object)
g = nx.from_edgelist(edges)
fig, ax = plt.subplots(1, 1, figsize=(50, 50))
nx.draw_networkx(g, ax=ax, node_size=5,
font_size=6, alpha=.5,
width=.5)
ax.set_axis_off()